Top 10k strings from Supercode - Microdrive (1984)(CP Software).tap
in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Utilities & Educational / Sinclair ZX Spectrum - Utilities & Educational - [TAP] (TOSEC-v2007-01-01) /
Back to the directory listing
3 "23658",O: 3 "1";"SUPERCODE2" 2 to be replaced. 2 UP-SCROLL",T 2 PROGRAM",D 2 DOWN-SCROLL",T 2 BCCCCCCCCCCCCCCCCCCF 2 23635+256* 2 *"m";NN;C$( 2 *"m";E;"SUPERCODE3" 2 "ROM","0"," 2 "23791",F: 2 "23659",F: 2 "23659",D: 2 "16"-G*(N<P);","; 2 " This routine 2 Loading Time: 1 variables"'" (3) Numeric Arrays"'" (4) 1 to the bottom area of 1 to be located": 1 to a new address.To correct,run this routine before loading.It resets System vars to pre-paging values,& ensures programs from cassette 1 to 23755 and not 23813." 1 this rout- ine within(using 1 the following:-"'" 1 the 2- byte equivalent(see #101)of the address of the 1 that is to be transformed,into ";: 1 such lines." 1 statements won't work if 1 statement at 1 start in mem." 1 sets like the SCIFI in #79). 1 scrolls when re 1 s. Also see #82,#90,#100,#103h" 1 s,by combining 1 s which are stored in RAM(ie,UDGs or alternative 1 s when logically possible.Also see #64 #90,#100,#103h." 1 s the no: of 1 s the length of the BASIC program. Memory used by variables is ignored. Also see #103,#111."; 1 s the address of the first 1 s RAMTOP to its original value, zeroes the entire memory & resets System Variables,UDGs & stack." 1 s & statements in a prog. Restart SUPERCODE with 1 routine,& let x=no: after LD,de.Use #115 with a higher start address & x =no: of bytes.The file should 1 quotes to save space.Also see #64,#82 & #100." 1 prog autostart, enter 1 1 part2 of your program with the header of another prog, by manipulating Record/Pause keys on taperec.Call this routine in part1,& immediately after,call routine115.Part2 will now auto- 1 p,q if bytes) Use the same 1 out these Instructions. 1 only. Incidentally,to 1 on lines 22 & 23." 1 on all 24 lines of the 1 of the same 1 of BASIC containing a prespecified sequence of 1 of a given 1 no: whose 2-byte equivalent was 1 n to prevent the scroll? prompt corrupting the 1 mode engaged"''"Release S key": 1 it to a different address, >23900 so it does not overlap with the System variables."'" (c)To 1 it back with 1 is to be execu- ted.Enter 1 is renumbered(except for arguments like 2.8 or N+3,which are high- lighted.If arg 1 is possible:use 1 instruction. At the end, 1 ing the two parts." 1 in non-deletab-le lines:the listing vanishes 5)Autostart by using 1 in a BASIC program by another 1 from Part1,but anyone who attempts to 1 for another 1 etc. Then 1 ed/reset Spectrum. (5)Press 1 ed,use routine119 before each 1 ed,the BASIC will autorun,& will start the 1 ed into a Spectrum with shadow ROM paged in,as the prog will 1 ed came from tape/Mdrve, 1 each part immediately before saving the next one:this ensures that there will be no delay between 1 d, it must be relocated by the samenumber of bytes."'"(2)It is possible to relocate # 22,23,71&76 too,but only to add-resses which are multiples of 256 away from the original add-resses.Proceed as follows: Get the page of the routine,& press Q to quit.The original address is A - say you want to relocate it to A+256*ZZ,where ZZ is a +/-integer."; 1 d into 62866 & 62867 respectively. The 4 columns are addr,contents in dec+hex & 1 d into 57125/26 ) :if not you will return to the next statement. 1 d in 60952(lo) & 60953(hi):initially 9495." 1 d in 60878(lo) & 60879(hi):initially 9495.For the error 1 co-ordinates of the";'" top left hand corner of the box 1 co- ordinates of the top-left hand corner of the box." 1 but will jump to the 1 at any position on the screen: ie, to find the 1 at ANY position X,Y on the 1 as well as resets 1 areutilised.)": 1 are set up as UDGs. To return to usual UDGs, 1 address from which 1 able). Use N to exit. 1 a higher RAMTOP first." 1 a headerless file, disassemble its 1 a RAMTOP belowZ & 1 ________"' 1 \##N#F#"]\" 1 [}\r#s#N#F# 1 ZX SPECTRUM MACHINE CODE TOOLKIT 1 ZX INTERFACE1 MUST BE ATTACHED 1 ZX INTERFACE 1 ATTACHED 1 Z=A+G-F*(N= 1 Z;" /"'" ";Z+1 1 Z2=235 1 Z2=231Enter:- 9990 1 Z2=229 1 Z if from Microdrive).If anaddress >23800 is to be 1 X-3,0 The program will work provided you do not 1 X+1,0. To do this to other lines, first find their address X using routine 88, then 1 UMP PAGE#/ 1 UIT AND EXAMINE LINE 1210 1 Transfer OK"'" 1 This is Line #";Z 1 The save is OK. Press any key.": 1 TOP/MID RIGHT-SCR",S 1 TOP/MID LEFT-SCR",S 1 TOP RIGHT-SCROLL",S 1 TOP LEFT-SCROLL",S 1 TO SEE HOW THIS WAS DONE,"; 1 THERE HAS BEEN A RECORDING ERROR 1 THE MICRODRIVE VERSION 1 Start address: 1 Space (1-255)" 1 SUPERCODE4 1 SUPERCODE3 1 SUPERCODE2 1 SUPERCODE TOOLKIT 1 SUPERCODE 1 SIMULATOR",I 1 SIMULATOR",G 1 SAVE*""m"";1; 1 S with Interval I 1 S U P E R C O D E 1 Routine Starts at ";A 1 Routine Ends at ";A+B-E; 1 Recording OK 1 ROUTINE NO: 1 ROUTINE IN ROM 1 ROUTINE #";N;" 1 RIGHT-SCROLL",S 1 RIGHT-SCROLL",33 1 REPLACE",D 1 RENUMBER",D 1 RELOCATION OF SUPERCODE ROUTINES 1 REFLECT Y-AXIS",E 1 REFLECT X-AXIS",E 1 RAM SIZE: 48K"''"PROGRAM LOADED FROM CASSETTE 1 R"E\*S\###" 1 Q,E;"This routine converts hex no:s to their decimal equivalents. It clears the screen & prompts 'H:' - now ENTER the hex no:. Only the last 4 hex digits will be converted. The routine auto- repeats. Enter 'Q' to quit, & 1 Q,E;"This routine 1 Q,E;"Call this routine at the start of your program, say by having as 1 Q,D;" The Spectrum doesn't check if there is enough space free in its memory before 1 Press ENTER to Expand the Whole Program 1 Part2 by other means will crash the computer." 1 PRINTING",E 1 P,D;" To break into autostart progs, (a)Instead of 1 P,D;" (a)To check whether a ZX Inter- face1 is connected,see whether or not an error is produced if an instruction like 1 OVERPRINT",E 1 ON /OFF checkerboard on the 1 O,E;"In order to make the FIRST line of your program non- deletable 1 No. STATEMENTS : 1 No. OF EXTRA BYTES::}\_:~\W: 1 No. LINES : 1 No. Bytes: 1 NON-RELOCATABLE ... use L 1 NO: ROUTINE 1 NO MORE OCCURRENCES 1 NNNNNNNNNN 1 N$,C$,C$,DUR: 1 MID/LOW RIGHT-SCR",S 1 MID/LOW LEFT-SCR",S 1 MID RIGHT-SCROLL",S 1 MID LEFT-SCROLL",S 1 MICRODRIVE VERSION by F Vachha 1 MICRODRIVE 1 MEMORY AVAILABLEN 1 Length of Program Only:! 1 LOW RIGHT-SCROLL",S 1 LOW LEFT-SCROLL",S 1 LINE NO:NOW RENUMBER PROGRAM 1 LEFT-SCROLL",S 1 LEFT-SCROLL",33 1 KILL CONDENSER",D 1 J;"----> "; 1 J,H;"Routine Length is ";B;" bytes 1 If this is OK, press enter.If itis not, enter the new name (notethat only the first ten 1 INSTRUCTIONS ON THE TRANSFER OF SUPERCODE TO THE ZX-MICRODRIVE 1 INDEX PAGE ";(C-E)/ 1 I;"Less Sig More Sig": 1 H,D;" The ZX Microdrive spends most of its time trying to locate a file - actual loading is swift. 2 ways of saving files so that they can be accessed faster are (a) 1 GGGGGGGGGGGGGGGGGGGGGG 1 GGGGCCCCCCCCCCCCCCCCCCCGGGGG 1 GGGGBCCCCCCCCCCCCCCCCCCGGGGG 1 GCCCCCCCCCCCCCCCCCCG 1 G,D;"1)Make line1 1 1 Freddy A Vachha Vic B Rumsey 1 First Byte: 1 FROM LINE NO:TO LINE NO:AFTER LINE NO:NOW RENUMBER PROGRAM 1 FFFFFFFFFFFFFFF 1 F.VACHHA BSc 1 Enter Routine No: 1 Enter Index Page No: 1 EXCHANGE",E 1 ERROR CODE: ";N$: 1 ENLARGE REM 1 EFFECTS",I 1 EEEEEEEEEEEEEEEE 1 EEEEEEEEEEE 1 D,D;A$;A$;A$;A$: 1 Copying copies is FORBIDDEN 1 CCCCCCCCCCCCCCCCCCG 1 BLOCK COPY 1 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 BBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 Auto-start Line No: 1 Arrays"'" (5) FOR..NEXT control variables"'" Also see #70."; 1 Array Name: 1 ANY OTHER KEY 1 ADDRESS",D 1 A/C/D/E/I/J/L/M/N/P/Q/R/S/T 1 A$;A$;A$;A$: 1 >1 copies of the file on the same cartridge:for x copies,do 1 :these can be 1 :if not,only 1 of the copies might be erased."'" (b)When saving different parts of the program, 1 :Swop sets all squares with the item On,to Off, & all with the item Off,to On." 1 :On/Off toggle the given Colour item"'" 1 9990, & proceedto 1 7,13, enter PRINT 1 65360/61 with the start address of routine #63(Hex-Dec) which must also be in memory." 1 65290. All the memory from 32768 to 65535 is used.To replay,use #78." 1 64834, Box Width"'" 1 64832/5 with 1 64831, Box height"'" 1 64714/5, 2 byte eq of S Also see #60." 1 64711/2, 2 byte eq of I 1 64702, Frequency 2" 1 64693, Frequency 1"'" 1 64682, Duration"'" 1 64670, 28(UP) or 29(DOWN)" 1 64651, Duration"'" 1 64649, Span"'" 1 64648, Frequency"'" 1 63951, Duration" 1 63905, New 1 63903, Old 1 63801, No: to be inserted" 1 63798/9, Start Address (2 byte eq)"'" 1 63796, No: of bytes"'" 1 63713/14 with the address of the new 1 63652/53 with the 2-byte equiv.(see #101)of the address of the 1 63648, no: of 1 63502,No: of 1 63499/500,2 byte equiv. (see#101)of 1 63017/8, Time(ms) "" """ 1 63014/5, Pitch( 2 byte eq) 1 63012, Number of notes 1 63011, Pitch Decrement 1 63004/5, Time(ms) "" """ 1 63001/2, Pitch( 2 byte eq) 1 60899 Now if an error of the type D: BREAK, H:STOP in INPUT or L: BREAK into prog occurs,the prog will not stop but will jump to the line no: whose 2 byte equi- valent was 1 60826. Now if/when an error(other than types 0:OK,8:END,9:STOP)occurs the program will not 1 60713","113","HEX->DEC CONVERTER",E 1 60039.Z contains the required 1 60020, Colours (0-7) 1 60006, Duration (1-127) 1 58682,Box Length in 1 58681,Box Width in pixels 1 58680,64(Up)72(Mid)80(Low) 1 58679,Top Left Square 1 57124 with 195 IF you wish to execute m/c from an address( 1 57114/15 with 1st byte's address. 1 57110/11 with no: of bytes 1 56777,Speed(from 1=Fast to 255=Slow):if too fast you might be unable to read it. Call the routine either before running program(ignoring the initial display)or during the program.TRACE remains ON until you enter 1 32s.Also see #71" 1 24,(``AAAAAAAAAAAAAAAAAAAAAAAAB24,(```AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD4 1 24,(`AAAAAAAAAAAAAAAAAAAAAAAAA 1 23788.If = Program length found with #104 then it came from a MicroDrive" 1 23787+256* 1 23728/9, 2 byte eq: of a 1 23692,255 within the loop that generates the lines." 1 23676,255."; 1 23676, 223 1 23670 & 23671 give the less sig: & more sig: bytes respectively." 1 23659,2. Use 1 23659,0 before each 1 23659,0 at prog start - the effect is that of no:5)." 1 23636.If=23755,it hasn't been paged in so far."'" (c)To check if the program just 1 23636,92.3)Use #59,#98,call #65/66 to disable BREAKs & #68 for nondeleta- ble 1 23636,150. To return to normal 1 23636),100. You can RUN but not LIST prog until you 1 23635+256 * 1 23607, 60."; 1 23607, 223 1 23606/7 WITH THE LESS/MORE SIGNIFICANT BYTES OF THE START ADDRESS LESS 256(THIS IS CURRENTLY 0/223). TO RETURN TO THE USUAL 1 23552,RAMTOP-23550-F to save your program disguised as bytes- it will autostart at the first line."'" Also see #104."; 1 23550,Address of LAST byte of 1 2 byte eq of Start Address in 63980/1 ) with the display 1 1984 SUPERSOFT SYSTEMS 1 120"'"Then enter 1 0"'"Turn Page: Use ENTER or Jump"'"Menu:";: 1 0 to restart the toolkit. If called from #92, only the last 2 digits are considered." 1 0 to restart the toolkit." 1 0 restarts" 1 .Keeping the 1 . Also try 1 - 23549. When the 1 ,use routine 87 to find its 1 ,to the given address,a headerless file" 1 ,this routine merges a 1 ,say X, to a new 1 , PEEK 23681." 1 , on an empty Spectrum,to 1 , which saves space but reduces speed. 0 is replaced by NOT PI. Also see #64,#82,#90,#103,#104. To save even more space,replace all commonly occurring numbers (ie 0,1,2,10 etc)by variables, defined at the start. Routine #72 is useful for locating no:s" 1 +-*]\"[\*Q\ 1 ++F+N+++"]\*S\~ 1 ++F+N+++"]\ 1 *ing:if a program is long/RAMTOP is low it could crash when you try to 1 *ing long programs.If any message besides 0 OK appears,shorten the prog: or 1 *]\###q#p##"]\ 1 *S\##"]\^#V 1 *"m";E;"SUPERCODE4": 1 *"m";E;"SUPERCODE4" 1 *""m"";n;Name$ 1 * it.That would lose the whole program.Instead,call this routine before 1 * ""m"";n;Name$( 1 )to tfr parts 3&4."'"(4)You now have a verified copy of SUPERCODE on microcartridge -it will autostart if you enter 1 )to Tape/Microdrive, 1 ). To access a routine whose no: is known, press 1 ). For ways to relocate routines, press 1 ),No:s/Var (2.3,Z,A$),operations(*),rel(<) etc,or combinations of these. 1 ), or just after,part1,and call it from there.It will 1 ) to restart. To get this routine's details another time, press 1 (with Z=A+256*ZZ)as in case(1) overleaf.Note thatthe routine will no longer workat its old address."'"(3)The ROM routines & #120 are vdifficult to relocate (why ever relocate a ROM routine?!),#77/78have to be located at the top ofRAM.": 1 (same number),0.2) 1 (X/256)"'" 1 (Index). Use ENTER to turn pages To access the next routine in the Index, press 1 (63768,63771) 1 (63762) 1 (63744) 1 (63738) 1 (63732) 1 (1)Using PAUSE"'"(2)W/out PAUSE 1 (1)Reset the Spectrum.Put a new cartridge in Microdrive#1"'"(2)Enter 1 (*)/ INDEX/ CUSTOMISE"'"Restart: Use 1 (""SUPERCODE"", or ERCO),commands( 1 '"This routine will be saved with the provisional name 1 '"If an error message appears, useGOTO 0 to restart."'"Enter the Microdrive number, or just press Enter for the default# of 1.": 1 & statement no: currently being executed. 1 #T]##N#F#~ 1 #4; is executed(use with r.no:65) This pages in the shadow ROM, if present."'" (b)To check if the shadowROM is paged in, 1 #0/#1.If the lower part of 1 # command does 1 # GENERATOR",E 1 "To store this routine on a Microdrive cartridge,press 1 "The SAVE is over."'"Proceeding with VERIFY.": 1 "SUPERCODE4" 1 "SUPERCODE3" 1 "SUPERCODE2" 1 "ROM","0","STAR/RING DRAW",E 1 "ROM","0","PROTECT PROGRAM",D 1 "ROM","0","NON-DELETABLE 1 "ROM","0","MDRVE DIAGNOSIS",D 1 "ROM","0","FREE-SCROLLER",E 1 "ROM","0","FAST 1 "ROM","0","CHR$ SCRAMBLE",E 1 "ROM","0","AUTO 1 "ROM","0","24 1 "ROM","0","2 BYTE CONVERTER",E 1 "Please replay the tape.": 1 "OK,the name is 1 "OK,the Microdrive # is 1 "Move the cursor to the required line & then call this routine. You will be in EDIT mode, but with the cursor at the END of the line." 1 "Further Reading: Programming the Z80 (R.Zaks,ISBN 0-89588-094-6) Complete SpectrumROMDisassembly (I.Logan&F.O'Hara,ISBN 0-86759- 117-X)": 1 "F R ` F R `"'': 1 "And now at slow speed": 1 ";A+P;", Box Width"'" 1 ";A+M;", Box Height" 1 ";A+G;" with"'" 1 ";A+F;", INT(X/256)" 1 ";A+E;", X- 256* 1 ";A+E;", Overall Colour" 1 ";A+E;", New Attribute Val"'" 1 "9",H;"To call this routine, use"; 1 "9",D;" If the 2 byte equivalent of X = L(Less)/M(More) sig: bytes,then L+256*M=X.The less significant byte comes 1st. This routine is an instant converter of numbers from 0-65535 to their 2 byte equivalents.To convert X to its 2 byte equiv.,enter 1 "65494","32","PIXEL RIGHT-SCROLL",S 1 "65462","32","PIXEL LEFT-SCROLL",S 1 "65350","112","HEX 1 "65318","32","REPLAY SOUND",D 1 "65290","28","RECORD SOUND",D 1 "65277","8","SURE 1 "65256","21"," 1 "65204","52"," 1 "65143","61"," 1 "65081","62"," 1 "65026","55"," 1 "64982","44"," 1 "64965","17"," 1 "64948","17"," 1 "64931","17"," 1 "64914","17"," 1 "64884",M: 1 "64883","31"," 1 "64858","25"," 1 "64828","30"," 1 "64809","19"," 1 "64784","25"," 1 "64756","28"," 1 "64744","12"," 1 "64706","38"," 1 "64675","31","DUAL-NOTE SOUND-GEN",J 1 "64647","28","UNI-NOTE SOUND-GEN",H 1 "64629","18","SHUTTER RIGHT-SCROLL",I 1 "64611","18","RIPPLE RIGHT-SCROLL",S 1 "64593","18","SHUTTER LEFT-SCROLL",I 1 "64575","18","RIPPLE LEFT-SCROLL",S 1 "64550","25"," 1 "64525","25"," 1 "64500","25"," 1 "64475","25"," 1 "64450","25"," 1 "64425","25"," 1 "64400","25"," 1 "64375","25"," 1 "64350","25"," 1 "64325","25"," 1 "64300","25"," 1 "64275","25"," 1 "64211","59","LOWER-CS PROGRAM",D 1 "64197","14","MEMORY AVAILABLE",E 1 "64098","99","PIXEL DOWN-SCROLL",192 1 "64001","97","PIXEL UP-SCROLL",192 1 "63976","25"," 1 "63950","26","LASER ZAP",I 1 "63902","43"," 1 "63806","96","BLOCK 1 "63795","11","BLOCK MEMORY INSERT",E 1 "63777","18"," 1 "63728","49"," 1 "63644","83"," 1 "63490","154"," 1 "63382","108","INITIALISE",D 1 "63205","177"," 1 "63163","42"," 1 "63143","20"," 1 "63124","19"," 1 "63051","73"," 1 "63034","17","OBLIQUE SCROLL-OFF",1625 1 "63010","24","MULTI 1 "63000","10","UNI 1 "62943","54","MONOCHROME PROGRAM",D 1 "62857","86","ANALYSE MEMORY",E 1 "62819","38"," 1 "62533","286","TAPE HEADER READER",D 1 "62404","129","ANALYSE PROGRAM",E 1 "62087","317","EXPAND PROGRAM",D 1 "61400","687","CONTRACT PROGRAM",D 1 "61000","400","BLOCK 1 "60972","24","AWAIT KEYPRESS",D 1 "60899","72","ON BREAK 1 "60879",D: 1 "60878",J: 1 "60826","73","ON ERROR 1 "60595","118","DEC->HEX CONVERTER",E 1 "60494","101"," 1 "60407","86","APPEND STATEMENT",D 1 "60222","185","VARIABLES 1 "60192","30"," 1 "60162","30"," 1 "60039","123"," 1 "60029",Z: 1 "60029",I: 1 "60020",F: 1 "60006",I: 1 "60000","38"," 1 "59988","12","PROGRAM LENGTH",E 1 "59975","13"," 1 "59294","681","SUPER-RENUMBER",D 1 "59136","158","PAINT-FILL",E 1 "58892","244"," 1 "58833","59","UPPER-CS 1 "58774","59","LOWER-CS 1 "58715","59","UPPER-CS PROGRAM",D 1 "58683","31","BLOCK MEM 1 "58608","75","PIXEL BOXRIGHT SCROLL",S 1 "58571","112","PIXEL BOXLEFT SCROLL",S 1 "58398","173","UNCONFUSE 1 "58263","135","CONFUSE 1 "58115","148","COMPRESS NUMBERS",D 1 "57344","768","SCIFI 1 "57176","168","FOREIGN ACCENTS",E 1 "57159","17","ADAPT PROGRAM",D 1 "57126","33","SURE 1 "57108","18","HEADERLESS FILES",D 1 "57094","14","ANTI- 1 "56777",E: 1 "56640","450","TRACE VARI-SPEED",E 1 "56"*(N<P)'" SCROLL-OFF: 1 "54"+(N<P): 1 "4)Embed hidden colour CHR$ to set 1 "36"+A;", 26"'" SCROLL-OFF: 1 "36"+A;", 0" 1 "3438","0","LOWER 1 "3190","0"," 1 "2590"*(N$="L") 1 "23659",F*(N= 1 "23606",D: 1 "234"-Z,D: 1 "23295"+Z, 1 "20"*(NMAX=F) 1 "2.3025"): 1 "19",E;"8 calls" 1 "18",D;" WRAP-AROUND: 1 "16";"Right" 1 "15",E;"To scroll attributes as well, refer to routines 37-40(define suitable box & Attr value).Call the attribute scroll once per 1 call of this routine.": 1 "13";", 0" 1 "1210"+N*I: 1 "111"),D;" 1 "109"),H;" 1 "1";"run": 1 "1";"SUPERCODE4" 1 "1";"SUPERCODE3" 1 "1";"SUPERCODE": 1 "0","0","RESET",D 1 "'''"Where any part of SUPERCODE is used,a prominent credit must be given to this fact, and to its authors, F.A.Vachha BSc & V.B. Rumsey.": 1 "''"Number of Routines: 1 "''"Define Z1,Z2:-"'"For 1 "''"(1)To move a Relocatable Routineso that it starts at address Z,first 1 "'"Place: 56640-65535(RAMTOP=56639)Help Prog: 1 "#";N;": "; 1 " WRAP-AROUND: 1 " To store this routine on tape, press 1 " To renumber without 1 " To renumber lines starting with S using interval I, 1 " To make a 1 " To help with 1 " To delete all lines from a to b 1 " This routine zeroes all numeric variables/arrays,sets all 1 " This routine waits till a key (whose CODE will be put in L)is pressed."; 1 " This routine undoes the effect of #98, to allow lines of a CONFUSEd program to be EDITed/ altered." 1 " This routine swops all 1 " This routine simulates a power- off: ie, it not only does 1 " This routine shortens+speeds up programs by deleting all 1 " This routine replays what #77 recorded. It is probably best to use your cassette-recorder (MIC socket) to amplify the sound." 1 " This routine replaces numbers in the program by VAL 1 " This routine replaces each occ- urrence of a specified 1 " This routine prints out a full analysis of memory contents, starting at the address whose less & more significant bytes (see #101)have been 1 " This routine places a random # pair in the System Variable SEED ( PEEK 23670 & 23671 )." ; 1 " This routine operates on 1 " This routine merges a 1 " This routine loads information stored in memory into an auto- created 1 " This routine lists each 1 " This routine lists all"'" (1) Numeric variables"'" (2) 1 " This routine inserts a given number into a block of memory. 1 " This routine expands programs so that there is exactly one statement per line (except in IF..THEN lines).In reply to the prompt, enter the no: of the line you want expanded, or just ENTER if you want the entire program expanded. You must use #60 after calling this routine." 1 " This routine enables you to determine the 1 " This routine does a 1 " This routine deletes all hidden colour 1 " This routine decodes tapeheader information & prints out a full analysis (name, address, type, length & auto-start details." 1 " This routine converts decimal no:s from 0 to 65535 to hex. It clears the screen & prompts 'D:' - now ENTER the dec no:. Error message 6 results if the no: was out of range. The rou- tine autorepeats. Enter 'Q' to quit,& 1 " This routine allows hex input into RAM.POKE the less/more sig (see #101)bytes of the first address to be changed into the system-variable DEFADD(23563/4) 1 " This routine allows a block of lines to be relocated within a BASIC program.In order to shift lines 4200 till 6745 so they appear after2200 in the listing respond 4200,6745 & 2200 to the auto-prompts.The new lines will all have number 0.Now call #60 to renumber & #57 to delete the old lines. Fully errorproofed." 1 " The routine speeds up+contracts programs into the minimum no:of 1 " The routine changes all squares with a given 1 " The routine 1 " The free space F from the last Variable to RAMTOP is printed. Use 1 " THIS IS AN EXAMPLE OF THE SCIFI 1 " Routines 94 to 97 change the case (upper/lower)of strings or of the entire listing ( except strings),as specified.Note that an effective way of switching case from within programs is to POKE 23658,0 (LO) or 8(HI)." 1 " In some cases the command 1 " In order to scroll a table of data > 22 lines long without stopping, use the command 1 " INVERSE SCR: 1 " Having connected the EAR socket of the cassette-recorder to the Spectrum,start playing the tape (Voice is best;Vol=Max),& 1 " For transfer of 1 " Follow the prompts to expand a REM statement (to accommodate code) anywhere in the program, by up to 9999 bytes" 1 " Draw multipointed-stars & rings by first plotting a point near the middle of the screen & then using DRAW X,Y,N where X & Y have magnitudes from 10 to 60 & N lies between 1000 & 9999. You should experiment." 1 " Draw any closed figure on the screen, then PLOT a point lying INSIDE it. POKE 59293 with the Attribute value to be filled,& then call this routine." 1 " Corrupts the listing without affecting program execution: attempting to EDIT/alter lines could be fatal (thus useful for program protection, as are #68/ #80)." 1 " Call this routine at the start of your program, say by having as 1 " By POKEing 23606 & 23607 with different numbers, a corrupted character set is obtained. To normalise, POKE 23606,0 : POKE 23607,60. Protect your program with this, temporarily normal- ising before each PRINTing." 1 " BASIC programs with m.code in 1 " A set of accented 1 values are not changed.Refer to #25-27 for 1 to a ZX-Microdrive, press 1 to """" & all dimensioned 1 swops the current screen & the STOREd one A screen has 6912 bytes (24*32* 8, + 24*32 Attributes) & should be stored above RAMTOP (CLEARed downwards to make room).To have a screen from X to X+6911, use 1 saves a screen, 1 recalls it. 1 messages." 1 is now called 1 does not close all streams.If this occurs,use this routine." 1 SAVE""Name""CODE ";A;",";B 1 ROUTINE # 65 HAS PREVENTED YOU FROM BREAKING INTO THIS PROGRAM 1 OVERPRINT 1 ERR+1,0'.Any BREAK/ error will now cause a crash. 6) 1 59580 ,I: POKE 59582/3,2 byte eq:of S Each 1 23692,x where x is the no: of lines to be scrolled. To scroll 'forever' use 1 1.The 2 byte equivalents(see # 101)of the starting address of the memory & the no: of bytes must be stored in 63209/10 and 63206/07 respectively." 1 -rewind & replay the cassette from the start.When you come to this page,press 1 (Tape)."'"Note address,length,customising POKEs(if any)etc for future ref:": 1 (Repeat)."'" For a demo, press 1 (Quit). Use 1 (Number).": 1 (MDrve)." 1 (Demo)."'" To return to the Index, press 1 ( Location Change ). For BASIC, press 1 the cursor is pointing to."; 1 stored in RAM ( 1 no:,the next valid 1 but also 1 X,Y;""Optional Message"";Variable The method works with 1 key pressed,play the cassette. This tfrs parts 1&2."'"(3)After the reset enter 1 arrays to 1 V.RUMSEY 1 BASIC programs."'" (b)To 1